feat(mix): integrate LIONESS Sphinx payload encryption#3837
Draft
chaitanyaprem wants to merge 16 commits into
Draft
feat(mix): integrate LIONESS Sphinx payload encryption#3837chaitanyaprem wants to merge 16 commits into
chaitanyaprem wants to merge 16 commits into
Conversation
…ager and logos-messaging for broadcasting membership changes and general coordination with API updates and fixes Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: Codex <codex@openai.com>
…ption_shims crash - Add cover traffic support with constant rate as per spec - Add mix-user-message-limit and mix-disable-spam-protection CLI flags - Fix option_shims.nim double-evaluation bug causing UnpackDefect crash in ping (template expanded await expression twice, racing two calls) - Reduce default rate limit to 2 msgs/epoch for simulation testing - Add check_cover_traffic.sh metrics monitoring script Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Defensive nil check for mixRlnSpamProtection when spam protection is disabled, preventing potential crash if the guard in start() is ever bypassed. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- nim-libp2p: adds ProofResult, reclaimProofToken, same-epoch precomp - mix-rln-spam-protection-plugin: implements messageId reuse from discarded cover packets Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- rename ExtendedKademliaDiscoveryParams -> ExtendedServiceDiscoveryParams - switch sink from textlines[file] to textlines to work around a chronicles compile-time macro-eval bug under Nim 2.2.4
1 task
|
You can find the image built from this PR at Built from f14fcb6 |
15d341c to
3886ac1
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
vendor/nim-libp2pto vacp2p/nim-libp2p#2349 head — LIONESS wide-block cipher replaces AES-CTR for Sphinx payload encryption (header MAC unchanged).MaxConnections* = 50inwaku_switch.nim(libp2p#2329 made the const private).waku_kademlia.nimto the new service-discovery API:lookup()is now Result-returning,startAdvertising()no longer returns a bool,randomRecords()is private — use exportedlookupRandom()instead.simulations/mixnet/run_lioness_sim.sh— headless 5-mix-node sim driver for end-to-end verification.Verification (
run_lioness_sim.sh)mix_cover_emitted_total(n1..n5)mix_cover_received_total(n1..n5)Cover traffic exercises the full Sphinx path (encrypt → multi-hop forward → unwrap at terminal hop where the leading-zeros tag identifies the cover packet). Counts increment as expected; zero
DECRYPT_FAILEDor leading-zeros-check failures across all nodes.Chat-side delivery (alice → bob) still fails on the existing RLN spam-protection epoch-quota issue (
Message id (4) is not within user_message_limit (4)) — pre-existing on the cover-traffic baseline, unrelated to LIONESS.Test plan
make chat2mix wakunode2builds clean against the bumped submodulefeat/cover-traffic🤖 Generated with Claude Code